package lab03;


import java.io.*;

public class Test03{
    public static void main(String[] args) throws IOException {
        File file = new File("G:\\text.txt");

        if (!file.exists()){//检测文本是否存在
            file.createNewFile();
        }

        byte []b ="beijing 欢迎你".getBytes();
        //将文本存入字节数组
        FileOutputStream fileOuputStream = new FileOutputStream(file);
        fileOuputStream.write(b);
        fileOuputStream.close();

        FileReader reader = new FileReader(file);
        int i;
        if((i=reader.read()) !=-1){
            System.out.println((char)i);
        }

        FileWriter writer=new FileWriter("G://test.txt",true);
        writer.write("我的学号是：158433511");
        writer.close();

//filewriter是继承outputstreamwriter
        /*FileWriter文件输出流是用于将数据写入file或filedecription的输出流
        共有五个构造方法
        FileWriter(File file)  根据给定的 File 对象构造一个 FileWriter 对象。
        FileWriter(File file, boolean append)  根据给定的 File 对象构造一个 FileWriter 对象。
        FileWriter(String fileName)  根据给定的文件名构造一个 FileWriter 对象。
       FileWriter(String fileName, boolean append)  根据给定的文件名以及指示是否附加写入数据的 boolean 值来构造 FileWriter 对象。
       FileWriter(FileDescriptor fd)  构造与某个文件描述符相关联的 FileWriter 对象。
      其中方法可以分为三组，入参带File的为一组，入参带String 的为一组，这两组方法基本相似
        * public FileWriter(File file, boolean append) throws IOException {
        super(new FileOutputStream(file, append));

    }*/
        FileReader fileReader=new FileReader(file);

        int j=0;
        while((j=fileReader.read())!=-1){

            System.out.print((char)j);
        }

    }
}
